connStrで指定したデータ・ストアの全体バックアップまたは増分バックアップのコピーを作成します。データ・ストアは、一連のファイルまたはストリームのいずれかにバックアップできます。ttRestore関数またはttRestoreユーティリティを使用して、後でデータ・ストアをリストアできます。バックアップ時にデータ・ストアが使用中の場合にこの処理を正常に完了するには、共有モードに設定されている必要があります。
TimesTenのバックアップおよびリストア機能の概要については、『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』のデータ・ストアのコピー、移行、バックアップおよびリストアに関する項を参照してください。
アクセス制御が有効になっている場合は、ADMIN権限またはデータ・ストア・オブジェクトの所有権が必要です。
ttBackup (ttUtilHandle handle, const char *connStr,
ttBackUpType type, ttBooleanType atomic,
const char *backupDir, const char *baseName,
ttUtFileHandle stream);
ttBackup には、次のパラメータがあります。
パラメータ | 型 | 説明 |
handle | ttUtilHandle | ttUtilAllocEnvを使用して割り当てられるTimesTenユーティリティ・ライブラリ環境ハンドルを指定します。 |
connStr | const char * | バックアップするデータ・ストアについて記述する接続文字列を指定するヌル終端文字列。 |
type | ttBackUpType | 実行するバックアップの種類を指定します。指定可能な値は次のとおりです。 TT_BACKUP_FILE_FULL: backupDirおよびbaseNameパラメータで指定されたバックアップ・パスにファイルの全体バックアップを実行します。作成されたバックアップは、増分バックアップでは使用できません。 TT_BACKUP_FILE_FULL_ENABLE: backupDirおよびbaseNameパラメータで指定されたバックアップ・パスでファイルの全体バックアップを実行します。作成されたバックアップは、増分バックアップで使用できます。 TT_BACKUP_FILE_INCREMENTAL: backupDirおよびbaseNameパラメータで指定されたバックアップ・パスにデータ・ストアの増分可能バックアップが含まれている場合は、そのバックアップ・パスでファイルの増分バックアップを実行します。それ以外の場合は、エラーが返されます。 TT_BACKUP_FILE_INCR_OR_FULLbackupDirおよびbaseNameパラメータで指定されたバックアップ・パスにデータ・ストアの増分可能バックアップが含まれている場合は、そのバックアップ・パスでファイルの増分バックアップを実行します。それ以外の場合は、データ・ストアのファイルの完全バックアップを実行し、増分可能のマークを付けます。 TT_BACKUP_STREAM_FULL: streamパラメータで指定したストリームでストリーム・バックアップを実行します。 TT_BACKUP_INCREMENTAL_STOP: backupDirおよびbaseNameパラメータで指定されたバックアップ・パスに対して、増分バックアップを無効にします。これにより、増分バックアップでログ・ファイルが蓄積することを回避します。 |
atomic | ttBooleanType | 新しいバックアップを作成する前に、指定したディレクトリに存在する既存のバックアップを破棄するかどうかを指定します。 TT_FALSE: 新しいバックアップを開始する前に、指定したディレクトリに存在する既存のバックアップが破棄されます。 このオプションを指定しなかった場合、データ・ストアのバックアップがすでに含まれているディレクトリへのデータ・ストアの全体バックアップの作成は続行できますが、新規のバックアップが完了するまで既存のバックアップは破棄されません。 このパラメータは、ファイルの全体バックアップでのみ有効です。増分バックアップおよびストリーム・バックアップでは無視されます。 |
backupDir | const char* | ファイル・バックアップのためのバックアップ・ディレクトリを指定します。このパラメータは、ストリーム・バックアップでは無視されます。それ以外の場合はNULL以外になります。 TT_BACKUP_INCREMENTAL_STOPの場合は、無効にするバックアップ・パスのディレクトリ部分を指定します。 TT_BACKUP_INCREMENTAL_STOPまたはファイル・バックアップの場合は、NULLを指定すると、エラーが返されます。 |
baseName | const char* | ファイル・バックアップのためにbackupDirパラメータで指定したバックアップ・ディレクトリ内のバックアップ・ファイルのファイル接頭辞を指定します。 このパラメータは、ストリーム・バックアップでは無視されます。 このパラメータにNULLを指定すると、バックアップ・ファイルのファイル接頭辞には、データ・ストアのODBC定義に設定されたDataStore属性のファイル名部分が適用されます。 TT_BACKUP_INCREMENTAL_STOPの場合は、無効にするバックアップ・パスのベース名部分を指定します。 |
stream | ttUtFileHandle | ストリーム・バックアップの場合は、バックアップが書き込まれるストリームを指定します。 UNIXの場合は、 write(2) を使用して書き込むことができる整数ファイル記述子です。1を渡すと、stdout にバックアップが書き込まれます。Windowsの場合は、 WriteFile を使用して書き込むことができるHANDLEです。GetStdHandle(STD_OUTPUT_HANDLE) の結果を渡すと、標準出力にバックアップが書き込まれます。このパラメータは、ファイル・バックアップでは無視されます。 アプリケーションで、このパラメータに対してTTUTIL_INVALID_FILE _HANDLEを渡すことができます。 |
payrollというDSNのデータ・ストアをC:\backup
にバックアップするには、次のように入力します。
ttUtilHandle utilHandle;
int rc;
rc = ttBackup (utilHandle, "DSN=payroll", TT_BACKUP_FILE_FULL,
TT_TRUE, "c:\\backup", NULL, TTUTIL_INVALID_FILE_HANDLE);
バックアップが正常に行われると、すべてのファイルがC:\backup
ディレクトリに作成されます。
各データ・ストアで、8つの増分可能バックアップのみがサポートされます。
アプリケーションでttBackupをコールして、ロギングが無効になっているデータ・ストアをバックアップする場合、バックアップ・ファイルは、最新のチェックポイントの前にコミットされたトランザクションのみを反映します。最新のチェックポイントの後にコミットされたトランザクションは、バックアップに反映されません。
一時データ・ストアはバックアップできません。